docs: deeper structural improvements - #5
Conversation
… report formats, exit codes, OF bindings - Merge reference/exit-codes.md into cli/exit-codes.md: full table, per-command matrix, why-exit-1 explanation, CI YAML example, stability guarantee. Deleted the redundant reference page (sidebar update needed separately). - Expand how-flaglint-works.md: import-verified concept with false-positive example, three-phase pipeline explanation, what FlagLint does not do. - Expand troubleshooting.md: 4 items → 8 items covering 0-flags-detected, config-not-found, React-not-automigrated, apply-0-transformed, validate-CI-gap. - Rewrite report-formats.md: format comparison table, when-to-use prose for each format, GitHub Code Scanning SARIF upload example. - Expand configuration.md openFeatureClientBindings: what it does, example, multiple bindings, difference from wrappers. Signed-off-by: Krishan Kant Sharma <krishansharma0327@gmail.com>
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (35)
📝 WalkthroughWalkthroughThis PR is a documentation-only update across the flaglint.dev docs site. It rewrites exit-code semantics, expands CLI configuration and report-format documentation, revises the analysis pipeline narrative, adds troubleshooting scenarios, updates command examples to npx flaglint@latest, and repoints "Edit this page on GitHub" links to the new flaglint.dev repository path. ChangesDocumentation content and link updates
Estimated code review effort: 2 (Simple) | ~15 minutes Possibly related PRs
Poem
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
- The blanket "every gap is a false-negative, never a false-positive" claim was wrong for one row: block-scoped variable shadowing (issue #5) is a documented false-positive risk, not a false-negative one — verified by reproducing it against the built binary. Carved out the exception in both supported-scope.md and limitations.md instead of overclaiming. - The command-comparison table said flaglint-go has no `init`/`completion`; it actually does ship a working `completion` command (Cobra's stock boilerplate, not bespoke) — split the row and corrected it. `init` really doesn't exist yet. Signed-off-by: Krishan Kant Sharma <krishansharma0327@gmail.com>
…trict-types and baseline counts Every identity-resolution gap listed as "not resolved yet" on the flaglint-go Limitations and Supported Scope pages has actually been closed (verified directly against the flaglint-go issue tracker): chained factory-call-then-method (#20), method values (#6), interface satisfaction (#15), block-scoped shadowing (#5), factory returning a wrapper type (#16), and nested go.mod files (#17). These pages were last updated right before that work landed. - limitations.md / supported-scope.md: mark all six as resolved (noting which layer resolves each — Phase 1 default vs. opt-in --strict-types), add two newer Phase-1 mechanisms these pages never mentioned at all (a struct field declared *ld.LDClient with no observed construction, and a composite literal directly initializing a package-level var), and state plainly that zero identity-resolution gaps are currently tracked. - identity-model.md: add worked examples for both newer Phase-1 mechanisms above, plus a new "Phase 2 — --strict-types" section (interface satisfaction, transitive factory wrapping, cross-function method-value forwarding) that didn't exist on this page at all before. - index.md: same corrections to the "what flaglint-go does/doesn't do" summary — it previously named method values and interface satisfaction as open gaps. - cli/{scan,audit,validate}.md: --strict-types wasn't documented as a flag anywhere on the site despite being available on all three commands since it shipped; added to each page's options table. audit.md's baseline JSON example was also missing the "schemaVersion" and "counts" fields flaglint-go now emits; validate.md's Baseline Mode section gains a note on what "counts" actually catches (a brand-new duplicate of an already-baselined call, not just a brand-new fingerprint). Verified: `npm run build` completes cleanly (90 pages), spot-checked the rendered Limitations page's output directly. Signed-off-by: Krishan Kant Sharma <krishansharma0327@gmail.com>
Summary
Deeper structural improvements from the expert docs audit — expands thin pages, merges duplicates, and adds missing reference content.
Exit codes — merged duplicate pages
cli/exit-codes.mdis now the complete authoritative page: full table (0/1/2/3/130), per-command matrix, CI YAML example, stability guaranteereference/exit-codes.mddeleted (was a duplicate)How FlagLint works — major expansion
variation()from an animation library is never flaggedTroubleshooting — 4 items → 9 items
Added: "0 flags detected", "Config file not found", "React patterns not auto-migrated", "
--applyshows 0 transformed", "validate passes locally but fails in CI"Report formats — full rewrite
openFeatureClientBindings — proper documentation
Test plan
Summary by CodeRabbit
Documentation
Bug Fixes